package com.qf.service;/*
 * @author     : XXX
 * @date       : 2022/5/27 13:54
 * @description: some description
 */

import com.qf.dao.UserDao;
import com.qf.dao.UserDaoImpl;
import com.qf.pojo.User;
import com.qf.utils.MD5utils;

public class UserServiceImpl implements UserService {
    private MD5utils MD5Utils;

    public User login(String userName, String password) {
        //1. 根据用户名到数据库查询用户对象
        UserDao userDao = new UserDaoImpl();
        User user = userDao.findByUserName(userName);

        //2. 判断用户是否为空, 如果为空用户名错误
        if (user == null) {
            return null;
        }

        //5. 校验密码是否正确, 使用md5将用户输入的密码加密, 将加密后的密文与数据库
        //中密码的密码文进行对比, 如果一致证明密码正确, 如果不一致证明密码输入错误
        String md5Pwd = MD5Utils.md5(password);
        if (md5Pwd.equals(user.getPassword())) {
            return user;
        }

        return null;
    }

    @Override
    public boolean check(String userName) {
        return false;
    }

    @Override
    public int createUser(User user) {
        //1. 密码使用md5进行加密
        String md5 = MD5Utils.md5(user.getPassword());
        user.setPassword(md5);

        //5. 调用dao完成添加功能
        UserDao userDao = new UserDaoImpl();
        int count = userDao.addUser(user);

        return count;
    }
}
